/*
 * Copyright (c) OSGi Alliance (2005). All Rights Reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v1.0 which accompanies this
 * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html.
 *
 * This copyright applies to the comments and public final static String fields only
 */
package org.osgi.core.framework.interfaces
{
	import org.osgi.core.framework.events.BundleEvent;

	/**
	 * A <code>BundleEvent</code> listener. When a <code>BundleEvent</code> is
	 * fired, it is asynchronously delivered to a <code>BundleListener</code>.
	 *
	 * <p>
	 * <code>BundleListener</code> is a listener interface that may be implemented
	 * by a bundle developer.
	 * <p>
	 * A <code>BundleListener</code> object is registered with the Framework using
	 * the {@link BundleContext#addBundleListener} method.
	 * <code>BundleListener</code>s are called with a <code>BundleEvent</code>
	 * object when a bundle has been installed, resolved, started, stopped, updated,
	 * unresolved, or uninstalled.
	 *
	 * @version $Revision: 1.11 $
	 * @see BundleEvent
	 */

	public interface IBundleListener
	{
		/**
		 * Receives notification that a bundle has had a lifecycle change.
		 *
		 * @param event The <code>BundleEvent</code>.
		 */
		function bundleChanged(event:BundleEvent):void;
	}
}